import http from 'wechat-http'

// 1. 设置全局默认请求地址
http.baseURL = 'https://live-api.itheima.net'

// 请求拦截器
http.intercept.request = (config) => {
  // 1.1. 对请求数据做点什么
  // console.log('🟢 config', config)
  // 常见错误
  // config.header.Authorization = wx.getStorageSync('token')
  config.header = {
    // 携带 token 信息
    Authorization: 'Bearer ' + wx.getStorageSync('token'),
    // 如果有传递 header 信息，可覆盖默认的 header 信息
    ...config.header,
  }
  return config
}

// 2. 设置响应拦截器
// http.interceptors.response.use(
http.intercept.response = (res) => {
  // 2.1. 对响应数据做点什么
  // console.log('响应拦截器', res.data)
  // code 业务状态码为 10000 才表示成功
  if (res.data.code === 10000) {
    // 2.2. 返回响应数据
    return res.data
  } else {
    // 其他错误情况，根据后端返回的信息，前端左轻提示
    wx.utils.toast(res.data.message || '业务错误')
    // 主动返回失败的 Promise，目的：不执行业务 await 后续代码
    return Promise.reject(res.data)
  }
}

// 3. 导出
export default http
